package cn.com.dcsgo.service;

import cn.com.dcsgo.domain.bo.CustomerTotalHistoricalTransactionAmountBO;
import cn.com.dcsgo.domain.dto.OrderPageDTO;
import cn.com.dcsgo.domain.po.Order;
import cn.com.dcsgo.domain.vo.OrderVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 针对表【order(订单表)】的数据库操作Service
 *
 * @author Dcsgo
 * @since 13/5/2025 上午 10:54
 */
public interface OrderService extends IService<Order> {
    /**
     * 获取所有客户历史交易总额信息
     *
     * @return 所有客户历史交易总额信息
     */
    List<CustomerTotalHistoricalTransactionAmountBO> getCustomerTotalHistoricalTransactionAmountBOList();

    /**
     * 分页条件查询客户订单信息(总交易金额降序)
     *
     * @param pageParam    分页参数
     * @param orderPageDTO 分页查询条件
     * @return 客户订单信息
     */
    IPage<OrderVO> getPage(Page<OrderVO> pageParam, OrderPageDTO orderPageDTO);
}
